// pages/scanCoupon/scanCoupon.js
const app = getApp()
import {
  postRequest,
  getRequest,
  postParamsRequest,
} from '../../api/request';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    myCouponBg: app.globalData.myCouponBg,
    mcId: '',
    beid: '',
    couponInfo: {
      coupon: {},
      status: 0,
      statusLabel: "领取"
    },
    isSubmit: false,
    isGetCoupon: false,
  },

  //线下优惠券码详情
  getOfflineCoupon() {
    let that = this;
    wx.showLoading({
      title: '获取中...',
      mask: true,
    })
    postParamsRequest("/api/coupon/getOfflineCoupon", {
      mcId: that.data.mcId,
    }).then((res) => {
      console.log(res.data.data);
      if (res.data.data != null) {
        that.setData({
          couponInfo: res.data.data,
        })
      }
      // 停止下拉刷新效果
      wx.stopPullDownRefresh()
      wx.hideLoading()
    }).catch((err) => {
      // 停止下拉刷新效果
      wx.stopPullDownRefresh()
      wx.hideLoading()
    });
  },

  //领取优惠券
  addOfflineCoupon() {
    let that = this;
    if (that.data.isSubmit) {
      return;
    }
    if (that.data.couponInfo.status == 0) {
      wx.showLoading({
        title: '领取中...',
        mask: true,
      })
      that.setData({
        isSubmit: true,
      })
      postParamsRequest("/api/coupon/addOfflineCoupon", {
        mcId: that.data.mcId,
        memberId: app.myInfo.memberId,
      }).then((res) => {
        console.log(res.data.data);
        // 停止下拉刷新效果
        wx.stopPullDownRefresh()
        wx.hideLoading()
        that.setData({
          isSubmit: false,
        })
        if (res.data.code == 0 && res.data.data) {
          that.getOfflineCoupon()
          wx.showToast({
            title: '领取成功',
            icon: 'none'
          })
          that.setData({
            isGetCoupon: true,
          })
        }
      }).catch((err) => {
        // 停止下拉刷新效果
        wx.stopPullDownRefresh()
        wx.hideLoading()
        that.setData({
          isSubmit: false,
        })
      });
    } else {
      wx.switchTab({
        url: '../index/index'
      })
    }
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    if (options.scene) {
      this.setData({
        mcId: options.scene,
      })
      //如果没有token,则需要重新登录获取个人信息等，避免缺少id导致数据无法获取
      if (app.token == "" || app.token == undefined) {
        app.initLogin().then(res => {
          this.getOfflineCoupon()
        }).catch(err => {})
      } else {
        this.getOfflineCoupon()
      }

    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})